Mechanically Verified Calculational Abstract Interpretation

نویسندگان

  • David Darais
  • David Van Horn
چکیده

Calculational abstract interpretation, long advocated by Cousot, is a technique for deriving correct-by-construction abstract interpreters from the formal semantics of programming languages. This paper addresses the problem of deriving correct-by-verifiedconstruction abstract interpreters with the use of a proof assistant. We identify several technical challenges to overcome with the aim of supporting verified calculational abstract interpretation that is faithful to existing pencil-and-paper proofs, supports calculation with Galois connections generally, and enables the extraction of verified static analyzers from these proofs. Tomeet these challenges, we develop a theory of Galois connections in monadic style that include a specification effect. Effectful calculations may reason classically, while pure calculations have extractable computational content. Moving between the worlds of specification and implementation is enabled by our metatheory. To validate our approach, we give the first mechanically verified proof of correctness for Cousot’s “Calculational design of a generic abstract interpreter.” Our proof “by calculus” closely follows the original paper-and-pencil proof and supports the extraction of a verified static analyzer.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Abstract interpretation as anti-refinement

This article shows a correspondence between abstract interpretation of imperative programs and the refinement calculus: in the refinement calculus, an abstract interpretation of a program is a specification which is a function. This correspondence can be used to guide the design of mechanically verified static analyses, keeping the correctness proof well separated from the heuristic parts of th...

متن کامل

A Calculational Approach to Control-Flow Analysis by Abstract Interpretation

We present a derivation of a control-flow analysis by abstract interpretation. Our starting point is a transition system semantics defined as an abstract machine for a small functional language in continuation-passing style. We obtain a Galois connection for abstracting the machine states by composing Galois connections, most notable an independent-attribute Galois connection on machine states ...

متن کامل

Mechanically Verifying Correctness of CPS Compilation

In this paper, we study the formalization of one-pass call-by-value CPS compilation using higher-order abstract syntax. In particular, we verify mechanically that the source program and the CPS-transformed program have the same observable behavior. A key advantage of this approach is that it avoids any administrative redexes thereby simplifying the proofs about CPS-translations. The CPS transla...

متن کامل

A Declarative Compositional Timing Analysis for Multicores Using the Latency-Rate Abstraction

ion Vı́tor Rodrigues, Benny Akesson, Simão Melo de Sousa, Mário Florido 1 RELiablE And SEcure Computation Group Universidade da Beira Interior, Covilhã, Portugal 2 DCC-Faculty of Science, Universidade do Porto, Portugal 3 LIACC, Universidade do Porto, Portugal 4 CISTER-ISEP Research Centre, Polytechnic Institute of Porto, Portugal Abstract. This paper presents a functional model for timing analy...

متن کامل

Formal Verification of a C Value Analysis Based on Abstract Interpretation

Static analyzers based on abstract interpretation are complex pieces of software implementing delicate algorithms. Even if static analysis techniques are well understood, their implementation on real languages is still error-prone. This paper presents a formal verification using the Coq proof assistant: a formalization of a value analysis (based on abstract interpretation), and a soundness proo...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • CoRR

دوره abs/1507.03559  شماره 

صفحات  -

تاریخ انتشار 2015